翻訳と辞書
Words near each other
・ Functional safety
・ Functional selectivity
・ Functional sentence perspective
・ Functional shift
・ Functional Skills Qualification
・ Functional software architecture
・ Functional sourcing
・ Functional specialization (brain)
・ Functional specification
・ Functional spinal unit
・ Functional square root
・ Functional Strategy
・ Function object
・ Function of a real variable
・ Function of several real variables
Function overloading
・ Function point
・ Function pointer
・ Function problem
・ Function prologue
・ Function prototype
・ Function representation
・ Function series
・ Function space
・ Function test
・ Function tree
・ Function type
・ Function value
・ Function word
・ Function-Behaviour-Structure ontology


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Function overloading : ウィキペディア英語版
Function overloading

In some programming languages, function overloading or method overloading is the ability to create multiple methods of the same name with different implementations. Calls to an overloaded function will run a specific implementation of that function appropriate to the context of the call, allowing one function call to perform different tasks depending on context.
For example, ''doTask()'' and ''doTask(object O)'' are overloaded methods. To call the latter, an object must be passed as a parameter, whereas the former does not require a parameter, and is called with an empty parameter field. A common error would be to assign a default value to the object in the second method, which would result in an ''ambiguous call'' error, as the compiler wouldn't know which of the two methods to use.
Another appropriate example would be a ''Print(object O)'' method. In this case one might like the method to be different when printing, for example, text or pictures. The two different methods may be overloaded as ''Print(text_object T); Print(image_object P)''. If we write the overloaded print methods for all objects our program will "print", we never have to worry about the type of the object, and the correct function call again, the call is always: ''Print(something)''.
==Rules in function overloading==

*The overloaded function must differ either by the arity or data types...
*The same function name is used for various instances of function call.
It is a classification of static polymorphism in which a function call is resolved using the 'best match technique', i.e., the function is resolved depending upon the argument list. Method overloading is usually associated with statically-typed programming languages which enforce type checking in function calls. When overloading a method, you are really just making a number of different methods that happen to have the same name. It is resolved at compile time which of these methods are used.
Method overloading should not be confused with forms of polymorphism where the correct method is chosen at runtime, e.g. through virtual functions, instead of statically. Polymorphism is the ability for a message or data to be processed in more than one form.
Example: function overloading in c++


#include
// volume of a cube
int volume(int s)
// volume of a cylinder
double volume(double r, int h)
// volume of a cuboid
long volume(long l, int b, int h)
int main()

In the above example, the volume of various components are calculated using the same function call "volume", with arguments differing in their data type or their number.

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Function overloading」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.